class Solution {
    public int numSquares(int n) {
        int[] ret=new int[n+1];
        for(int i=0;i<n+1;i++) {
            ret[i]=0x7FFFFFFF;
        }
        ret[0]=0;
        for(int i=1;i<=n;i++) {
            for(int j=1;i-j*j>0;j++) {
                ret[i]=Math.min(ret[i],ret[i-j*j]+1);
            }
        }
        return ret[n];
    }
}
public class lc279 {
}
